package com.tenement.mybatis.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.tenement.mybatis.entity.House;

/**
 * 房源信息dao层接口
 * 
 * @author wk
 *
 */
public interface HouseMapper {

	int deleteByPrimaryKey(Integer hId);

	int insert(House record);

	int insertSelective(House record);

	House selectByPrimaryKey(Integer hId);

	int updateByPrimaryKeySelective(House record);

	int updateByPrimaryKey(House record);

	/**
	 * 模糊查询房源信息，h_caption标题,h_area区域,h_region下属区域
	 * 
	 * @param condition
	 * @return
	 */
	List<House> getHouseByLike(@Param("condition") String condition);

	/**
	 * 获取房源记录数
	 * 
	 * @return
	 */
	int getHouseCount(@Param("house") House house, @Param("condition") String condition);
	
	/**
	 * 
	 * @param condition
	 * @return
	 */
	int getHouseCountByLike(@Param("condition") String condition);

	/**
	 * 主页7个条件进行查询
	 * 
	 * @param house
	 * @return
	 */
	List<House> getHouseBy7(@Param("house") House house, @Param("sort2") String sort,
			@Param("startRecord") int startRecord, @Param("condition") String condition);

	/**
	 * 信息发布
	 * 
	 * @param house
	 * @return
	 */
	int publishHouseMsg(House house);

	/**
	 * 获取房屋详细信息
	 * 
	 * @param hPhotoid
	 * @return
	 */
	House getHouseDetail(String hPhotoid);

	/**
	 * 获取房源caption,用户搜索提示框
	 * 
	 * @return
	 */
	List<House> getHouseCaptions(String hCaption);

	/*--------------------管理员操作--------------------*/
	/**
	 * 管理修改房源审核状态,审核通过，审核不通过1,-1,审核中0
	 * 
	 * @param house,房源hId,hReviewStatus审核状态
	 * @return
	 */
	int modifyHReviewStatus(House house);
	
	/**
	 * 获取所有房源信息
	 * 
	 * @return
	 */
	List<House> getHouseNoReview();
}